package com.sc.nft.service;

import com.sc.nft.entity.ActivityAward;
import com.sc.nft.entity.RewardAllocation;
import com.sc.nft.entity.dto.ActivityAwardSaveDTO;
import com.sc.nft.entity.dto.ActivityAwardSaveDetailsDTO;
import com.sc.nft.entity.vo.ActivityAwardSaveDetailsVO;

import javax.validation.Valid;
import java.util.List;

/**
 * (ActivityAward)表服务接口
 *
 * @author 王伟成
 * @since 2023-09-13 15:34:01
 */
public interface ActivityAwardService {

    void save(List<ActivityAwardSaveDTO> activityAwardSaveDTO,Long activityBasicsId);


    /**
     * 根据activityBasicsId获取奖励集合
     *
     * @param activityBasicsId
     * @return
     */
    List<ActivityAward> getByActivityBasicsId(Long activityBasicsId);

    void saveActivityAward(Long activityAwardId, List<ActivityAwardSaveDetailsDTO> activityAwardSaveDetailsDTOS,Long activityBasicsId);

    /**
     * 根据活动配置Id获取奖励内容
     * @param rewardAllocationId
     * @return
     */
    List<ActivityAwardSaveDetailsVO> getByRewardAllocationId(Long rewardAllocationId);
}
